package com.qf.utils;

import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateUtil;
import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;

import java.util.Date;
import java.util.List;

public class TokenTools {

    //生成JWT字符串
    public static String create(String username,String password){
        return JWT.create()
                .withAudience(username,password) //用户信息
                .withExpiresAt(DateUtil.offset(new Date(), DateField.MINUTE,5)) //设置加密字符失效时间
                .sign(Algorithm.HMAC256(password));//加密的方式
    }

    //获取jwt中的用户名
    public static String getName(String jwt) {
        return JWT.decode(jwt).getAudience().get(0);
    }
    //解析字符串
    //正确性/过期时间

    public static List<String> getNamePass(String jwt) {
        return JWT.decode(jwt).getAudience();
    }
}
